// Learn cc.Class:
//  - https://docs.cocos.com/creator/manual/en/scripting/class.html
// Learn Attribute:
//  - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html
// Learn life-cycle callbacks:
//  - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html

cc.Class({
    extends: cc.Component,

    properties: {
        // foo: {
        //     // ATTRIBUTES:
        //     default: null,        // The default value will be used only when the component attaching
        //                           // to a node for the first time
        //     type: cc.SpriteFrame, // optional, default is typeof default
        //     serializable: true,   // optional, default is true
        // },
        // bar: {
        //     get () {
        //         return this._bar;
        //     },
        //     set (value) {
        //         this._bar = value;
        //     }
        // },
    },

    // LIFE-CYCLE CALLBACKS:

    onLoad () {
        /**Action分两类：1.瞬时完成——ActionInstant
         *              2.一段时间后才能完成——ActionIntervial
         */

        //action方法:
        //(1)moveTo(time,vec2)
        //     var moveTo=cc.moveTo(1,cc.v2(100,100));
        //     // this.node.runAction(moveTo);
        // //(2)moveBy(time,vec2)
        //     var moveBy=cc.moveBy(1,cc.v2(100,100));
        //     // this.node.runAction(moveBy);
        // //(3)rotateTo(time,rotation)
        //     var rotateTo=cc.rotateTo(1,90);
        //     // this.node.runAction(rotateTo);
        // //(4)rotateBy(time,rotation)
        //     var rotateBy=cc.rotateBy(1,-90);
        //     // this.node.runAction(rotateBy);
        // //(5)scaleTo(time,scale)
        //     var scaleTo=cc.scaleTo(1,1.1);
        //     // this.node.runAction(scaleTo);
        // //(6)scaleBy(time,scale)
        //     var scaleBy=cc.scaleBy(1,2);
        //     this.node.runAction(scaleBy);
        //(7)fadeIn(time)
        //     this.node.opacity=0;
        //     var fadeIn=cc.fadeIn(1);
        //     this.node.runAction(fadeIn);
        //(8)fadeOut(time)

        //(9)fadeTo
        //     var fadeTo=cc.fadeTo(125);


        //回调函数:
        //*callFunc
        var func=cc.callFunc(function(){
            console.log("callFunc");
        }.bind(this));
        this.node.runAction(func);

        //动作组合:
        //(1)sequence 顺序执行
        // var mt=cc.moveTo(1,cc.v2(10,100));
        // var st=cc.scaleTo(1,2);
        // var seq=cc.sequence([mt,st]); 
        // this.node.runAction(seq);

        //(2)spawn 同时执行
        // var mt=cc.moveTo(1,cc.v2(10,100));
        // var st=cc.scaleTo(1,2);
        // var spa=cc.spawn([mt,st]); 
        // this.node.runAction(spa);

        //(3)repeat 循环执行
        // var mt=cc.moveBy(1,cc.v2(10,100));
        // var st=cc.scaleTo(1,2);
        // var spa=cc.spawn([mt,st]); 
        // var rpt=cc.repeatForever(spa);
        // this.node.runAction(rpt);

        /*缓动 Ease:
        API:https://docs.cocos.com/creator/api/zh/?q=cc.ease
        cc.easeIn
        创建 easeIn 缓动对象，由慢到快。

        cc.easeOut
        创建 easeOut 缓动对象，由快到慢。

        cc.easeInOut
        创建 easeInOut 缓动对象，慢到快，然后慢。
        */

        //延时
        var delay=cc.delay(3);

        //stopAction 停止某个动作
        //stopAllAction 停止所有动作



            
    },
    

    start () {
       
    },

    // update (dt) {},
});
